package cn.px.service.sb;

import cn.px.common.bean.AbstractPageResultBean;
import cn.px.dao.dto.sb.SbStoreCheckJobDTO;
import cn.px.dao.entity.sb.SbStoreCheckJob;
import cn.px.dao.vo.query.sb.SbStoreCheckJobVO;
import cn.px.service.base.IBaseService;

import java.util.List;

/**
 * @Description 点检记录 service
 * @author 品讯科技
 * @date 2024-08
 * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
 */
public interface SbStoreCheckJobService extends IBaseService<SbStoreCheckJob, SbStoreCheckJobDTO> {

    /**
     * 批量删除
     *
     * @param ids ：
     * @return ：
     */
    int batchDelete(List<String> ids);

    /**
     * 选择列表
     *
     * @param model
     * @return
     */
    List<SbStoreCheckJobVO> selectList(SbStoreCheckJobDTO model);
    /**
     * 分页查询
     *
     * @param record
     * @param pageNum
     * @param pageSize
     * @return
     */
    AbstractPageResultBean<SbStoreCheckJobVO> selectPageList(SbStoreCheckJobDTO record, int pageNum, int pageSize);

    /**
     * 检查任务状态
     */
    void checkJobStatus();

    /**
     * 查看详情
     *
     * @param id
     * @return
     */
    SbStoreCheckJobVO getDetail(Object id);

    /**
     * 完成任务
     *
     * @param dto
     */
    int finishJob(SbStoreCheckJobDTO dto);

    /**
     * 统计用户任务数量
     *
     * @param userId ：
     * @param type   ：
     * @return ：
     */
    int countUserTask(String userId, Integer type);
}
